/*
NodeMCU无线终端模式连接WiFi
By 太极创客（http://www.taichi-maker.com）
2019-03-11
 
本示例程序用于演示如何使用NodeMCU无线终端模式连接WiFi

如需获得更多关于如何使用NodeMCU开发物联网的教程和资料信息
请参考太极创客网站（http://www.taichi-maker.com）
并在首页搜索栏中搜索关键字：物联网
*/

#include <ESP8266WiFi.h>  // 本程序使用ESP8266WiFi库

const char* ssid = "Xiaomi_1A69";    // 连接WiFi名（此处使用taichi-maker为示例）
                                     // 请将您需要连接的WiFi名填入引号中
const char* password = "NEO135802";  // 连接WiFi密码（此处使用12345678为示例）
                                     // 请将您需要连接的WiFi密码填入引号中

void setup() {
  Serial.begin(9600);  // 启动串口通讯

  WiFi.begin(ssid, password);      // 启动网络连接
  Serial.print("Connecting to ");  // 串口监视器输出网络连接信息
  Serial.print(ssid);
  Serial.println(" ...");  // 告知用户NodeMCU正在尝试WiFi连接

  int i = 0;                               // 这一段程序语句用于检查WiFi是否连接成功
  while (WiFi.status() != WL_CONNECTED) {  // WiFi.status()函数的返回值是由NodeMCU的WiFi连接状态所决定的。
    delay(1000);                           // 如果WiFi连接成功则返回值为WL_CONNECTED
    Serial.print(i++);
    Serial.print(' ');  // 此处通过While循环让NodeMCU每隔一秒钟检查一次WiFi.status()函数返回值
  }                     // 同时NodeMCU将通过串口监视器输出连接时长读秒。
                        // 这个读秒是通过变量i每隔一秒自加1来实现的。

  Serial.println("");                         // WiFi连接成功后
  Serial.println("Connection established!");  // NodeMCU将通过串口监视器输出"连接成功"信息。
  Serial.print("IP address:    ");            // 同时还将输出NodeMCU的IP地址。这一功能是通过调用
  Serial.println(WiFi.localIP());             // WiFi.localIP()函数来实现的。该函数的返回值即NodeMCU的IP地址。
}

void loop() {
}